package com.example.myapplication;

import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.ViewModel;

import java.util.ArrayList;
import java.util.List;

/**
 * 推荐内容的 ViewModel
 * 管理推荐列表数据
 */
public class RecommendViewModel extends ViewModel {
    private MutableLiveData<List<RecommendItem>> recommendItems = new MutableLiveData<>();
    private String currentInterest = "未选择";

    public LiveData<List<RecommendItem>> getRecommendItems() {
        if (recommendItems.getValue() == null) {
            loadRecommendItems();
        }
        return recommendItems;
    }

    /**
     * 设置当前兴趣并刷新数据
     */
    public void setInterest(String interest) {
        this.currentInterest = interest;
        loadRecommendItems();
    }

    /**
     * 加载推荐数据
     */
    public void loadRecommendItems() {
        List<RecommendItem> items = new ArrayList<>();
        
        // 根据兴趣生成不同的推荐内容
        if (currentInterest.contains("阅读")) {
            items.add(new RecommendItem(1, "《活着》", "余华经典作品，讲述了一个人一生的故事", "阅读"));
            items.add(new RecommendItem(2, "《三体》", "刘慈欣科幻巨作，获雨果奖", "阅读"));
            items.add(new RecommendItem(3, "《百年孤独》", "加西亚·马尔克斯魔幻现实主义代表作", "阅读"));
        }
        
        if (currentInterest.contains("音乐")) {
            items.add(new RecommendItem(4, "《夜曲》- 周杰伦", "经典中文流行音乐", "音乐"));
            items.add(new RecommendItem(5, "《稻香》- 周杰伦", "温暖治愈的歌曲", "音乐"));
            items.add(new RecommendItem(6, "《晴天》- 周杰伦", "青春回忆经典", "音乐"));
        }
        
        if (currentInterest.contains("运动")) {
            items.add(new RecommendItem(7, "晨跑指南", "适合初学者的跑步计划", "运动"));
            items.add(new RecommendItem(8, "瑜伽入门", "基础瑜伽动作教学", "运动"));
            items.add(new RecommendItem(9, "健身房攻略", "新手健身必备知识", "运动"));
        }
        
        // 如果没有选择兴趣，显示默认推荐
        if (items.isEmpty()) {
            items.add(new RecommendItem(10, "欢迎使用", "请先选择您的兴趣，我们将为您推荐相关内容", "默认"));
            items.add(new RecommendItem(11, "热门推荐", "发现更多精彩内容", "默认"));
            items.add(new RecommendItem(12, "个性化推荐", "根据您的兴趣定制内容", "默认"));
        }
        
        recommendItems.setValue(items);
    }

    /**
     * 刷新数据（用于下拉刷新）
     */
    public void refreshData() {
        loadRecommendItems();
    }
}
